#ifndef _COMMON_H
#define _COMMON_H

// #include <zconf.h>
#include <errno.h>
#include <string.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <stdio.h>
#include <signal.h>
#include <stdlib.h>
#include <poll.h>
#include <syslog.h>
#include <stdarg.h>
#include <signal.h>
#include <sys/select.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/wait.h>

#define MAX_LEN 1024
#define LISTENQ 128

/* 从socketfd描述字中读取"size"个字节. */
size_t readn(int fd, void *buffer, size_t size);

/* error - print a diagnostic and optionally exit */
void error(int status, int err, char *fmt, ...);

int tcp_client(char *addr, int port);

int tcp_server_listen(int port);

void make_nonblocking(int fd);

#endif // _COMMON_H
